1. Field of the Invention
The present invention relates to a clock synchronous information transmit apparatus (hereinafter to be called a transmit unit of a clocked serial I/O), and a clock synchronous information receiving apparatus (hereinafter to be called a receiving unit of the clocked serial I/O, and clock synchronous information transmit and receiving apparatus is represented as the clocked serial I/O), and more particularly to a receiving unit of the clocked serial I/O in the case, where noises occur in a communication data for information exchange.
2. Description of the Related Art
In a microcomputer, when communicating information with peripherals and other microcomputers, there are a method of transmitting and receiving data in parallel and a method of transmitting and receiving data in series. In the parallel and serial transmissions and receptions, more data can be transferred per unit time in the case of using the parallel transmitting and receiving. However, when considering a communication cost, more wirings are required in the parallel transmitting and receiving, thus the cost increases. So there is a field accepting the serial transmitting and receiving in which less wirings is required even though a transfer rate is low.
However, also in the serial transmitting and receiving, there are the clocked serial I/O which uses a communication clock and transmits and receives data in synchronism with the communication clock, and an asynchronous serial information transmitting and receiving which transmits and receives data without using the communication clock. Also in this case, the transfer rate and the number of wirings are related to each other; the higher transfer rate is the clocked serial I/O and the less wirings is the asynchronous serial information transmitting and receiving. And hence, in the field where the wirings are few and the transfer rate is high, the clocked serial I/O is frequently used.
Next, the operation of the above-mentioned clocked serial I/O is briefly described.
FIG. 1 is a schematic view showing connection between the transmit unit and the receiving unit of the clocked serial I/O.
In FIG. 1, numeral 1 designates the transmit unit of the clocked serial I/O, numeral 2 designates the receiving unit of the clocked serial I/O, numeral 3 designates the communication clock outputted from the receiving unit 2 of the clocked serial I/O and inputted to the transmit unit 1 of the clocked serial I/O, numeral 4 designates a communication enable outputted from the transmit unit 1 of the clocked serial I/O and inputted to the receiving unit 2 of the clocked serial I/O, and numeral 5 designates communication data outputted from the transmit unit 1 of the clocked serial I/O and inputted to the receiving unit 2 of the clocked serial I/O.
The operation is described with reference to a timing chart shown in FIG. 2. In the timing chart shown in FIG. 2, a signal flow is shown as a time lapse from left to right.
When the transmit unit I of the clocked serial I/O transmits data "b00110110" (b indicates that following numerals are binary), at first, the communication enable 4 is changed to a low level from a high level. The receiving unit 2 of the clocked serial I/O starts the communication clock 3 when recognizing that the communication enable 4 is at the low level. Responding to the low level of the communication clock 3, the transmit unit 1 of the clocked serial I/O brings the communication enable 4 to the high level, and outputs the low level as the communication data 5. The receiving unit 2 of the clocked serial I/O brings the communication clock 3 to the high level, and receives information of the communication data 5 at the timing thereof. Since it is at the low level in this case, "0" is recognized.
Next, in order to have the next data being transferred, the receiving unit 2 of the clocked serial I/O brings the communication clock 3 to the low level. Since the transmit unit 1 of the clocked serial I/O transmits the next data "0" responding to the low level of the communication clock 3, the communication data 5 is kept at the low level. Next, the receiving unit 2 of the clocked serial I/O brings the communication clock 3 to the high level, and receives information of the communication data 5 at the timing thereof. Since it is at the low level in this case, "0" is recognized.
Next, the receiving unit 2 of the clocked serial I/O brings the communication clock 3 to the low level to have the third data being transferred. Responding to the low level of the communication clock 3, the transmit unit 1 of the clocked serial I/O brings the communication data 5 to the high level to transmit the next data "1". The receiving unit 2 of the clocked serial I/O brings the communication clock 3 to the high level, and receives information of the communication data 5 at the timing thereof. Since it is at the high level in this case, "1" is recognized.
There is assumed to be a noise generated on the communication data, 5 when the receiving unit 2 of the clocked serial I/O receives the fourth data, it should be recognized to be "1", but it is misjudged that "0" has been received.
Afterwards, when the receiving unit 2 of the clocked serial I/O receives the fifth to eighth data, the data "b00100110" is transferred from the transmit unit 1 of the clocked serial I/O to the receiving unit 2 of the clocked serial I/O.
A simple signal flow is explained below by referring to the block diagram showing a configuration of the receiving unit 2 of the clocked serial I/O in FIG. 3.
In FIG. 3, reference numeral 6 denotes a control signal circuit for receiving a communication clock 3 and outputting a control signal 8, and 7 denotes a serial/parallel (S/P) converting circuit for receiving the control signal 8, converting the information sent seriously from the communication data 5 into parallel data, and outputting the parallel data to an 8-bit bus 9.
The control signal circuit 6 outputs the control signal 8 in order to take in the transferred communication data 5 into the serial/parallel converting circuit 7 at the rising timing of the communication clock. For example, when such data is transferred eight times, the receiving unit 2 of the clocked serial I/O outputs "b00100110" instead of the data of "b00110110" to the 8-bit bus 9 due to noise.
In such conventional apparatus, the data received by the receiving unit 2 of the clocked serial I/O is "b00100110" because of noise, and correct data cannot be transmitted and received. Thus, in the conventional apparatus, when noise is generated on the communication data 5, wrong data was exchanged.